#ifndef __v3d_interface_h__
#define __v3d_interface_h__

#include "v3d_defs.h"

enum KB_KEYS
{

	KB_MAX_KEYS = 256,
};

class V3dInterface : public V3dObject
{

protected:
	boolean *kbKeys;

public:
	V3dInterface(void);
	virtual ~V3dInterface(void);

	virtual void Update();

	virtual void InitWindow()=0;
	virtual void Start()=0;

	virtual void ResetKeys();		/// Reset all keys
	virtual void ResetKey(uint8 key);		/// Reset keys
	virtual void SetKey(uint8 key);		/// Set keys
	virtual boolean IsKey(uint8 key);

	static V3D_WINDOW_TYPE window_type;
	static V3dInterface *I;
	static void Init();
	static void DeInit();
};

#endif	//__v3d_interface_h__

